Wireguard

WireGuard — коммуникационный протокол и бесплатное программное обеспечение с открытым исходным кодом, который реализует зашифрованные виртуальные частные сети (VPN). Он был разработан для простого использования технологии VPN, высокой производительности и низкой поверхности атаки.

Здесь описана настройка работы Wireguard на роутере RTR-2. Настройка разделена на 2 части (первая часть - описание настройки на linux, вторая часть - описание настройки на openwrt роутере).

Схема

OpenWrt Router (Wireguard клиент)
wg1 (10.8.100.5)
        |
        | UDP 51820 (WireGuard tunnel)
        | AllowedIPs = 0.0.0.0/0
        v
Linux Server (Wireguard сервер)
wg0 (10.8.100.4)
        |
        | MASQUERADE (SNAT)
        | iptables -t nat -A POSTROUTING -o enp1s0
        v
Internet
  • Linux-сервер выступает в роли серверной части WireGuard — принимает подключения на UDP-порту 51820 — выполняет NAT и обеспечивает выход в интернет
  • OpenWrt RTR-2 выступает в роли клиентской части WireGuard — устанавливает VPN-соединение с сервером — отправляет весь трафик через WireGuard-туннель
  • Между устройствами создаётся защищённый WireGuard-туннель, по которому передаётся весь сетевой трафик RTR-2.

Настройка серверной части Wireguard

Настройка Wireguard на Openwrt (RTR-2, клиент)

Подготовка конфигурационного файла

Настройка веб-конфигуратора openwrt